package com.power.sifa.approve.model.pojo;

import com.power.sifa.approve.model.enumeration.Tp_mattype;
import com.power.sifa.approve.model.enumeration.Tp_procmaterial;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Arrays;
import java.util.List;

/**
 * 电子卷宗初始化材料项
 */
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Data
public class Term {
    public String name;
    private String mattype;

    /**
     * 行政复议归档材料树
     * @return
     */
    public List<Term> getList() {
        List<Term> list = Arrays.asList(
                Term.builder().name("案卷封面").mattype(Tp_mattype.COVER+"").build(),
                Term.builder().name("卷内目录").mattype(Tp_mattype.DIRECTORY+"").build(),
                Term.builder().name("行政复议决定书或行政复议终止决定书").mattype(Tp_procmaterial.HEAR_DECISION+","+Tp_procmaterial.HEAR_TERMIN+","+Tp_procmaterial.HEAR_REJECT+","+Tp_procmaterial.ADMRE_NOACCEPT).build(),
                Term.builder().name("行政复议申请受理通知书").mattype(Tp_procmaterial.ADMRE_ACCEPT+"").build(),
                Term.builder().name("行政复议申请补正通知书").mattype(Tp_procmaterial.ADMRE_APPEND+"").build(),
                Term.builder().name("行政复议申请书及附件材料").mattype(Tp_mattype.ADMOTHER+","+Tp_mattype.THIOTHER+","+Tp_procmaterial.HEAR_WITHDRAW).build(),
                Term.builder().name("申请人提交的证据清单及证据材料").mattype(Tp_mattype.APPOTHER+"").build(),
                Term.builder().name("申请人和委托代理人的身份证明及授权委托书").mattype(Tp_mattype.APPSPECIAL+"").build(),
                Term.builder().name("被申请人答复通知书").mattype(Tp_procmaterial.ADMRE_REPLY+"").build(),
                Term.builder().name("被申请人答复书").mattype(Tp_procmaterial.HEAR_REPLYLETTER+"").build(),
                Term.builder().name("被申请人提交的证据清单及证据材料").mattype(Tp_procmaterial.ARCHIVE_INVENTORY+"").build(),
                Term.builder().name("被申请人的法定代表人和委托代理人的身份证明及授权委托书").mattype(Tp_procmaterial.ARCHIVE_EMPOWER+"").build(),
                Term.builder().name("第三人参加行政复议通知书").mattype(Tp_procmaterial.ARRIVE_PARTICIPATE+","+Tp_procmaterial.ARRIVE_DISAGREE).build(),
                Term.builder().name("第三人提出的书面意见书").mattype(Tp_procmaterial.MATER_WRITTEN+"").build(),
                Term.builder().name("第三人提交的证据清单及证据材料").mattype(Tp_procmaterial.MATER_INVENTORY+"").build(),
                Term.builder().name("第三人和委托代理人的身份证明及授权委托书").mattype(Tp_mattype.THISPECIAL+"").build(),
                Term.builder().name("规范性文件处理转送函").mattype(Tp_procmaterial.ARRIVE_FORWARDONE+","+Tp_procmaterial.ARRIVE_FORWARDTWO).build(),
                Term.builder().name("停止执行通知书").mattype(Tp_procmaterial.HEAR_STOPAPL+","+Tp_procmaterial.HEAR_STOP).build(),
                Term.builder().name("行政复议案件延期通知书").mattype(Tp_procmaterial.HEAR_DELAY+"").build(),
                Term.builder().name("行政复议中止及恢复审查通知书").mattype(Tp_procmaterial.HEAR_HANGUP+","+Tp_procmaterial.HEAR_RESTORE).build(),
                Term.builder().name("行政复议询问、调查笔录及调查核实的相关材料").mattype(Tp_procmaterial.HEAR_INVESTLETTER+","+Tp_procmaterial.HEAR_NOTE+","+Tp_procmaterial.HEAR_INQUEST+","+Tp_procmaterial.HEAR_HEARING+","+Tp_procmaterial.HEAR_RECORDS+","+Tp_procmaterial.HEAR_CHECKCARD+","+Tp_procmaterial.HEAR_DETERMINEAPL+","+Tp_procmaterial.HEAR_DETERMINE+","+Tp_procmaterial.HEAR_MOBILIZE+","+Tp_procmaterial.HEAR_TRAWL+","+Tp_procmaterial.HEAR_TRAWLFORM).build(),
                Term.builder().name("行政复议案件请示、报告、处理建议及批复等材料").mattype(Tp_procmaterial.ADMRE_SUPNOTICE+","+Tp_procmaterial.ADMRE_SUPREP+","+Tp_procmaterial.ARRIVE_INFORM+","+Tp_procmaterial.ARRIVE_FORWARDING+","+Tp_procmaterial.ARRIVE_DUTYACCEPT+","+Tp_procmaterial.ARRIVE_DUTYRESTORE).build(),
                Term.builder().name("责令履行行政复议决定通知书").mattype(Tp_procmaterial.HEAR_PERFORM+","+Tp_procmaterial.HEAR_REMINDER+","+Tp_procmaterial.ARRIVE_FORCE).build(),
                Term.builder().name("行政复议调解书").mattype(Tp_procmaterial.HEAR_MEDIATE+"").build(),
                // "行政复议和解协议"改成了"调解相关材料"
                Term.builder().name("调解相关材料").mattype(Tp_procmaterial.HEAR_RECONCILIATE+","+Tp_procmaterial.MATER_MEAPPLY+","+Tp_procmaterial.MATER_MEREGISTER+","+Tp_procmaterial.MATER_MERECORD+","+Tp_procmaterial.MATER_MEACCORD).build(),
                Term.builder().name("行政复议意见书").mattype(Tp_procmaterial.ARRIVE_OPINION+","+Tp_procmaterial.HEAR_ASYNAPPROVE).build(),
                Term.builder().name("行政复议建议书").mattype(Tp_procmaterial.ARRIVE_PROPOSE+"").build(),
                Term.builder().name("行政处分建议书").mattype(Tp_procmaterial.ARRIVE_PUNISH+"").build(),
                Term.builder().name("送达回证").mattype(Tp_mattype.RECEIPT+"").build(),
                Term.builder().name("委员会专家相关材料").mattype(Tp_procmaterial.HEAR_INVESTLETTER+","+Tp_procmaterial.ADMRE_APPROVE+","+Tp_procmaterial.HEAR_EXPERTINVITATIE+","+Tp_procmaterial.HEAR_EXPERTNOTICE+","+Tp_procmaterial.HEAR_EXPERTNOTE).build(),
                Term.builder().name("行政复议审批表").mattype(Tp_procmaterial.ADMRE_REPORT+","+Tp_procmaterial.HEAR_EXPERT).build(),
                Term.builder().name("行政复议案件备考表（封底）").mattype(Tp_mattype.FILINGS+"").build()
        );
        return list;
    }

    /**
     * 复议监督归档树
     * @return
     */
    public List<Term> getSuperviseList() {
        List<Term> list = Arrays.asList(
                Term.builder().name("案卷封面").mattype(Integer.toString(Tp_mattype.COVER)).build(),
                Term.builder().name("卷内目录").mattype(Integer.toString(Tp_mattype.DIRECTORY)).build(),
                Term.builder().name("申请人材料").mattype(Integer.toString(Tp_mattype.APPSPECIAL)).build(),
                Term.builder().name("监督决定材料").mattype(Tp_procmaterial.SUPERVISE_NOTICE+","+ Tp_procmaterial.SUPERVISE_TELL+","+Tp_procmaterial.SUPERVISE_RESULT+","+Tp_procmaterial.ADMRE_REPORT).build(),
                Term.builder().name("处理反馈材料").mattype(Integer.toString(Tp_mattype.RECEIPT)).build(),
                Term.builder().name("行政复议案件备考表（封底）").mattype(Integer.toString(Tp_mattype.FILINGS)).build()
        );
        return list;
    }
}
